package com.yuandian.business.monitor.service;

import com.yuandian.api.business_monitor.po.E2eStudyCollect;
import com.yuandian.api.business_monitor.po.E2eStudyParam;
import com.yuandian.bpm.common.core.util.R;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

/**
 * 说明：端到端学习任务service接口
 * @Author zfsn
 * @Date 2023/7/12 14:17
 */
public interface IE2eStudyTaskService {

    /**
     * 分页查询端到端学习任务列表
     * @param param 端到端学习请求参数
     * @return 通用返回结果
     */
    R page(E2eStudyParam param);

    /**
     * 下载样本数据
     * @param param 端到端学习请求参数
     * @param response 响应上下文
     */
    void downloadSample(E2eStudyParam param, HttpServletResponse response) throws IOException;

    /**
     * 汇总查询
     * @param param 端到端学习请求参数
     * @return 通用返回结果
     */
    R collect(E2eStudyParam param);

    /**
     * 同步配置给步骤端到端学习
     * @param list 端到端学习汇总对象集合
     * @return 通用返回结果
     */
    R sync(List<E2eStudyCollect> list);
}
